package com.maiji.cloud.service;

import com.baomidou.mybatisplus.service.IService;
import com.maiji.cloud.entities.login.FoodMaterialEntity;
import com.maiji.cloud.entities.login.Label;
import com.maiji.cloud.request.BaseDataReqDto;
import com.maiji.cloud.request.ReqMetaData;
import com.maiji.cloud.request.login.FoodReqData;
import com.maiji.cloud.request.login.FoodFindAllReqData;
import com.maiji.cloud.response.BaseDataResDto;
import com.maiji.cloud.response.BaseMetaResDto;
import com.maiji.cloud.response.BaseResDto;
import com.maiji.cloud.response.login.FoodMaterialDetialResDto;
import com.maiji.cloud.response.login.FoodMaterialResData;
import com.maiji.cloud.response.login.RecipeResData;
import com.maiji.cloud.response.shopingmall.GoodsResData;
import org.springframework.http.ResponseEntity;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface FoodMaterialService extends IService<FoodMaterialEntity> {

    FoodMaterialDetialResDto getFoodMaterialDetailById(String foodId);

    BaseMetaResDto<List<FoodMaterialResData>> findAllFoods(FoodFindAllReqData data, ReqMetaData reqMetaData);

    BaseResDto delFoodsByIds(List<String> foodIds);

    BaseResDto addFood(FoodReqData data) throws Exception;

    BaseResDto editFood(FoodReqData data) throws Exception;

    BaseDataResDto<List<Label>> findAllLabelsByFoodId(String foodId);

    BaseDataResDto<String> uploadFoods(MultipartFile uploadFile) throws Exception;

    BaseMetaResDto<List<GoodsResData>> findAllGoodsByFoodIds(List<String> foodIds, ReqMetaData metaData);

}
